package alfred.proctice.com.recycleview;

import android.content.Context;
import android.content.res.TypedArray;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;

public class DynamicView extends RelativeLayout {

    private ImageView mIcon;
    private TextView mText;

    public DynamicView(Context context) {
        this(context, null);
    }

    public DynamicView(Context context, AttributeSet attrs) {
        super(context, attrs, 0);
        LayoutInflater.from(context).inflate(R.layout.view_dynamic, this, true);
        mIcon = (ImageView) findViewById(R.id.icon);
        mText = (TextView) findViewById(R.id.text);

        TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.DynamicView);
        String text = typedArray.getString(R.styleable.DynamicView_text);
        int textSize = typedArray.getInt(R.styleable.DynamicView_textSize, 10);
        int textColor = typedArray.getColor(R.styleable.DynamicView_textColor, context.getResources().getColor(R.color.color_text_salary));
        int src = typedArray.getResourceId(R.styleable.DynamicView_drawable, R.drawable.dynamic_zan_no);
        initView(text, textSize, textColor, src);
        typedArray.recycle();
    }

    private void initView(String str, int size, int color, int src) {
        mIcon.setImageResource(src);

        mText.setText(str);
        mText.setTextColor(color);
        mText.setTextSize(size);
    }

    public void setText(String str) {
        if (mText != null) {
            mText.setText(str);
        }
    }

    public void setTextSize(int size) {
        if (mText != null) {
            mText.setTextSize(size);
        }
    }

    public void setTextColor(int color) {
        if (mText != null) {
            mText.setTextColor(color);
        }
    }

    public void setIcon(int res) {
        if (mIcon != null) {
            mIcon.setImageResource(res);
        }
    }
}
